// pages/memo/memo.js
import {formatTimeMDHM} from "../../utils/util.js"
Page({

  /**
   * 页面的初始数据
   */
  data: {
    tabs:[
      {
        id:0,
        value:"备忘列表",
        isActive:true
      },
      {
        id:1,
        value:"添加备忘",
        isActive:false
      }
    ],
    memos:[],
    mode:0
  },

  // addMemo(title, content){
    
  // },

  //tabs点击事件
  handleTabsItemChange(e){
    const {index} = e.detail
    let {tabs} = this.data
    tabs.forEach((v,i)=>i===index?v.isActive=true:v.isActive=false);
    this.setData({
      tabs
    })
    if(index===1){
      this.saveChange()
    }
  },

  //添加
  formSubmit(e){
    let {title, content} = e.detail.value
    //格式检查
    if(title===''){
      wx.showToast({
        title: '请输入标题',
        icon: 'none',
        duration: 800
      });
      return
    }

    let memos = wx.getStorageSync("memos")
    if(!Array.isArray(memos)){
      memos=[]
    }
    //添加到数据中
    memos.push({
        type: 'memo',
        id: memos.length===0?0:(memos[memos.length-1].id+1)%100,
        top: false,
        title: title,
        date: formatTimeMDHM(new Date()),
        abstract: content
    })
    //刷新页面
    this.setData({memos})
    //写入缓存
    wx.setStorageSync("memos", memos);
    wx.showToast({
      title: '添加成功',
      icon: 'done',
      duration: 800,
      mask: false,
    });
  },

  //模式改变
  changeMode(e){
    //如果目前是删除模式，保存
    if(this.data.mode===1){
      wx.setStorageSync("memos", this.data.memos)
    }else{
      if(this.data.memos.length != 0){
        wx.showToast({
          title: '点击要删除的',
          icon: 'none',
          duration: 2000,
          mask: false
        });
      }
    }
    let newMode = (this.data.mode+1)%2
    this.setData({
      mode:newMode
    })
  },

  //保存删除
  saveChange(){
    if(this.data.mode===1){
      wx.setStorageSync("memos", this.data.memos)
      let newMode = (this.data.mode+1)%2
      this.setData({
        mode:newMode
      })
    }
  },

  //删除一条memo
  deleteMemo(e){
    const {index} = e.currentTarget.dataset
    let {memos} = this.data
    memos.splice(index, 1)
    this.setData({memos})
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      memos:wx.getStorageSync("memos")
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
    this.saveChange()
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    console.log('unload')
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})